//
//  ChatListViewController.m
//  Arts1
//
//  Created by apple on 15/10/5.
//  Copyright © 2015年 Arts1. All rights reserved.
//

#import "ChatListViewController.h"

@interface ChatListViewController ()

@end

@implementation ChatListViewController

- (void)viewDidLoad
{
    [super viewDidLoad];
    
    [self setDisplayConversationTypes:@[@(ConversationType_PRIVATE),@(ConversationType_SYSTEM)]];
    // Do any additional setup after loading the view.
    //设置需要聚合显示的会话类型为私聊模式
    [self setCollectionConversationType:@[@(ConversationType_PRIVATE)]];
    
    self.conversationListTableView.tableFooterView = [UIView new];
    
    //设置用户信息提供者,页面展现的用户头像及昵称都会从此代理取
    [[RCIM sharedRCIM] setUserInfoDataSource:self];    
}
/**
 *  将要显示会话列表单元，可以有限的设置cell的属性或者修改cell,例如：setHeaderImagePortraitStyle
 *
 *  @param cell      cell
 *  @param indexPath 索引
 */
- (void)willDisplayConversationTableCell:(RCConversationBaseCell *)cell atIndexPath:(NSIndexPath *)indexPath
{
    [super willDisplayConversationTableCell:cell atIndexPath:indexPath];
    [self refreshConversationTableViewIfNeeded];
}

/**
 *此方法中要提供给融云用户的信息，建议缓存到本地，然后改方法每次从您的缓存返回
 */
- (void)getUserInfoWithUserId:(NSString *)userId completion:(void(^)(RCUserInfo* userInfo))completion
{
    //此处为了演示写了一个用户信息
    if ([@"1" isEqual:userId]) {
        RCUserInfo *user = [[RCUserInfo alloc]init];
        user.userId = @"1";
        user.name = @"测试1";
        user.portraitUri = @"https://ss0.baidu.com/73t1bjeh1BF3odCf/it/u=1756054607,4047938258&fm=96&s=94D712D20AA1875519EB37BE0300C008";
        
        return completion(user);
    }
}

/**
 *  重写RCConversationListViewController的onSelectedTableRow事件
 *  重载函数，onSelectedTableRow 是选择会话列表之后的事件，该接口开放是为了便于您自定义跳转事件。
 *  在快速集成过程中，您只需要复制这段代码。
 *
 *  @param conversationModelType 数据模型类型
 *  @param model                 数据模型
 *  @param indexPath             索引
 */
-(void)onSelectedTableRow:(RCConversationModelType)conversationModelType conversationModel:(RCConversationModel *)model atIndexPath:(NSIndexPath *)indexPath
{   
    //跳入会话页面,在创建会话列表里面实现
    _pushChatListView(model);
}

/**
 *  将要加载table数据，子类通过重写该方法添加自定义的数据源，然后通过属性  conversationListDataSource 来读取
 *
 *  @param dataSource 数据源数组
 *
 *  @return 数据源数组，可以添加自己定义的数据源item
 */
//-(NSMutableArray*)willReloadTableData:(NSMutableArray*)dataSource
//{
//    
//}


- (void)didReceiveMemoryWarning
{
    [super didReceiveMemoryWarning];
    // Dispose of any resources that can be recreated.
}

@end
